Data network and execution environment replication for network automation and network applications

ABSTRACT

Network replica systems and methods include, via a server, a group of servers, or in a cloud computing environment, communicating with one or more management systems and one or more networks associated with the one or more management systems via one or more Application Programming Interfaces (APIs); obtaining data from the one or more management systems and/or the one or more networks; storing the data in a database of record which defines a detailed model of a current state of the networks; and applying one or more assertions to data of interest in the database of record to emulate behavior in the one or more networks, wherein the assertions map actual device, process, business, architecture, and technology behaviors onto the data of interest from the database of record to emulate the behavior, wherein the database of record and the applied one or more assertions include a network replica of the networks.

FIELD OF THE DISCLOSURE

The present disclosure generally relates to data communicationsnetworking. More particularly, the present disclosure relates to systemsand methods for data network and execution environment replication fornetwork automation and network applications such as A/B testing,optimization, simulation, planning, and the like.

BACKGROUND OF THE DISCLOSURE

Network Automation has been linked to enabling and enabled by SoftwareDefined Networking (SDN), Network Functions Virtualization (NFV), andmanagement solutions. In the case of SDN, one or more controllers and/ororchestration systems attempts to program network configuration androuting directly into network devices based on policy or informationfrom a northbound interface. NFV focuses on placing virtualized networkfunctions on physical network, compute, and storage resources to createmore appropriate service chains for the aggregate set of servicescurrently active on the network with the appropriate connectivitythrough the network. Network management focuses on the collection ofdata from the network in a database of record from an operationalperspective which can be used for planning, but is not designed tocreate a network replica, not able to emulate a network for functionslike A/B testing, nor is it typically designed to be resident in fullydistributed edge or cloud compute infrastructure.

Digital twinning is used in the industrial sector to model processes forthe purposes of asset optimization and emulation but has not beenextended to communications networking including logical and physicalnetwork constructs and functions. There are no current solutions thatcan provide a network representation that replicates a network and itsenvironment in near real-time including virtual, logical, physicaldevices, and resources with the ability to emulate the network, itsenvironment, and processes for applications such as AB testing,optimization, simulation, planning, and the like.

BRIEF SUMMARY OF THE DISCLOSURE

In an embodiment, a network replica method includes, via a server, agroup of servers, or in a cloud computing environment, communicatingwith one or more management systems and one or more networks associatedwith the one or more management systems via one or more ApplicationProgramming Interfaces (APIs); obtaining data from the one or moremanagement systems and/or the one or more networks; storing the data ina database of record which defines a detailed model of a current stateof the one or more networks; and applying one or more assertions to dataof interest in the database of record to emulate behavior in the one ormore networks, wherein the assertions map actual device, process,business, architecture, and technology behaviors onto the data ofinterest from the database of record to emulate the behavior, whereinthe database of record and the applied one or more assertions include anetwork replica of the one or more networks. The one or more assertionscan model functional capabilities and limitations of components in theone or more networks. The network replica method can further includenormalizing the obtained data to a common normalized definition andtimeframe prior to the storing.

The one or management systems can include any of a hypervisor, a NetworkFunctions Virtualization Orchestrator (NFVO), a Multi-Domain ServiceOrchestrator (MDSO), a Software Defined Networking (SDN) controller, anElement Management System (EMS), a Network Management System (NMS), anOperation Support System (OSS), and a Business Support System (BSS). Thenetwork replica method can further include analyzing the stored data viaan analytics engine to detect whether the one or more networks are in ananomalous state and, if so, to identify a degree of distress based onpast network states from the database of record. The network replicamethod can further include segmenting the network replica intosubcomponents; and distributing the subcomponents of the network replicato edge and core cloud compute components for analyzing local equipment.The one or more assertions can emulate traffic on the one or morenetworks at any of a photonic layer, a Time Division Multiplexing (TDM)layer, a packet layer, and a combination thereof. The network replicamethod can further include analyzing the obtained data to determinerelevance of the obtained data prior to the storing.

In another embodiment, a system includes one or more network interfacescommunicatively coupled to one or more management systems and one ormore networks associated with the one or more management systems via oneor more Application Programming Interfaces (APIs); one or moreprocessors communicatively coupled to the one or more networkinterfaces; and memory storing instructions that, when executed, causethe one or more processors to obtain data from the one or moremanagement systems and/or the one or more networks, store the data in adatabase of record which defines a detailed model of a current state ofthe one or more networks, and apply one or more assertions to data ofinterest in the database of record to emulate behavior in the one ormore networks, wherein the assertions map actual device, process,business, architecture, and technology behaviors onto the data ofinterest from the database of record to emulate the behavior, whereinthe database of record and the applied one or more assertions include anetwork replica of the one or more networks.

In a further embodiment, a non-transitory computer-readable mediumincluding instructions that, when executed, cause a server, group ofservers, or a cloud computing environment to perform the steps of:communicating with one or more management systems and one or morenetworks associated with the one or more management systems via one ormore Application Programming Interfaces (APIs); obtaining data from theone or more management systems and/or the one or more networks; storingthe data in a database of record which defines a detailed model of acurrent state of the one or more networks; and applying one or moreassertions to data of interest in the database of record to emulatebehavior in the one or more networks, wherein the assertions map actualdevice, process, business, architecture, and technology behaviors ontothe data of interest from the database of record to emulate thebehavior, wherein the database of record and the applied one or moreassertions include a network replica of the one or more networks.

BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure is illustrated and described herein withreference to the various drawings, in which like reference numbers areused to denote like system components/method steps, as appropriate, andin which:

FIG. 1 is a network diagram of an SDN network for describing the systemsand methods proposed herein;

FIG. 2 is a block diagram of functional components of an SDNenvironment;

FIG. 3 is a block diagram illustrating a server which may be used torealize the SDN controller, the business applications, and/or othersystems;

FIG. 4 is a block diagram of a network replica including a database ofrecord interfacing with the network of FIG. 1, management systems,operations, applications, and human resources;

FIG. 5 is a diagram of information in the database of recordillustrating an example of the level of detail when running applicationsthat simulate traffic on the network of FIG. 1;

FIG. 6 is a diagram of segmentation of the network replica of FIG. 4;and

FIG. 7 is a flowchart of a network replication process.

DETAILED DESCRIPTION OF THE DISCLOSURE

In various embodiments, the present disclosure relates to systems andmethods for logical network and environment replication for networkautomation and applications such as A/B testing, optimization,simulation, planning, and the like. For network automation, the systemsand methods include a logical database of record that interacts with allservices, network managed entities, applications, functions, andstorage, compute, physical, and human resources (or some subset) andtheir associated data of relevance in real-time (each will be referredto as a managed entity for the remainder of this document). Thereal-time database of record is sufficiently complete for networkautomation. The network behavior can be emulated to a degree required byapplications that automate the network via assertions that map actualdevice, process, business, architecture, technology behaviors onto thedatabase of record.

The database of record is a logical replica of not just the physicalnetwork, but a complete implementation includes its full configurationenvironment to provide optimization, AB testing, planning, prediction,attack, and change management. The database of record is logical replicacapable of interpreting virtual, physical, and human resources includingtheir limitations, capabilities, processes, and relationships. Thedatabase of record is logical replica capable of multi-layer trafficdelivery emulation down to the wavelength, packet, queue, Class ofService (COS), emission, backplane, etc. The database of record is alogical replica in a sufficiently complete implementation for designingand testing new control mechanisms, for product designs, for producttesting as a testbed for new service testing and deployment, tostress-test the network for processing-intensive network control andmanagement strategies, for network growth planning and the like. Thesystems and methods include intelligent information collection andmodeling based on active applications, to minimize communication betweenthe replica and the network.

SDN Network

FIG. 1 is a network diagram of an SDN network 10 for describing thesystems and methods proposed herein. Those of ordinary skill in the artwill recognize that various network configurations are contemplated withthe proposed systems and methods, and the network 10 is merely presentedfor illustration. The network 10 is an SDN network, which includes anSDN controller (or orchestrator) 60 with the ability to (logically)centrally program provisioning of forwarding in the network 10 in orderfor more flexible and precise control over network resources to supportnew services. Application Programmable Interfaces (APIs) provideprogrammatic communication between an SDN controller and either (i)specific applications or (ii) programmable network devices such ascommunication over Transaction Language-1 (TL-1) or Common ObjectRequest Broker Architecture (CORBA) calls. OpenFlow (www.openflow.org)is an example implementation of a special OpenFlow interface 62 from theSDN controller 60 to programmable network devices. The SDN controller 60may or may not communicate via mediation software 64, to each switch 70,72, 74 in the network 10 in order to provision a forwarding table ateach switch along a connection path in order to instantiate theforwarding behavior needed for the connection. OpenFlow is described,for example, in the OpenFlow Switch Speciation, Version 1.1.0 (February2011)—Version 1.5.0 (December 2014), the contents of which areincorporated by reference herein. While OpenFlow describes one versionof an SDN interface, other SDN protocols besides OpenFlow (such asNetconf, REST, CLI, etc.) are also contemplated for use with the systemsand methods described herein.

Again, for illustration purposes, the network 10 includes anOpenFlow-controlled packet switch 70, various packet/optical switches72, and packet switches 74 with the switches 70, 72 each communicativelycoupled to the SDN controller 60 via the OpenFlow interface 62 and themediation software 64 at any of Layers 0-3 (for example L0 being DWDM,L1 being OTN, L2 being Ethernet, L3 being Internet Protocol, etc.). Theswitches 70, 72, 74, again for illustration purposes only, are locatedat various sites, including an Ethernet Wide Area Network (WAN) 80, acarrier cloud Central Office (CO) and data center 82, an enterprise datacenter 84, a Reconfigurable Optical Add/Drop Multiplexer (ROADM) ring86, a switched OTN site 88, another enterprise data center 90, a centraloffice 92, and another carrier cloud Central Office (CO) and data center94. The network 10 can also include IP routers 96 and a networkmanagement system (NMS) 98. Note, there can be more than one of the NMS98, e.g., an NMS for each type of equipment—communicatively coupled tothe SDN controller 60. Again, the network 10 is shown just to providecontext and typical configurations at Layers 0-3 in an SDN network forillustration purposes. Those of ordinary skill in the art will recognizevarious other network configurations are possible at Layers 0-3 in theSDN network.

The switches 70, 72, 74 can operate, via SDN, at Layers 0-3. TheOpenFlow packet switch 70, for example, can be a large-scale Layer 2Ethernet switch that operates, via the SDN controller 60, at Layer 2(L2). The packet/optical switches 72 can operate at any of Layers 0-3 incombination. At Layer 0, the packet/optical switches 72 can providewavelength connectivity such as via DWDM, ROADMs, etc., at Layer 1, thepacket/optical switches 72 can provide time division multiplexing (TDM)layer connectivity such as via Optical Transport Network (OTN),Synchronous Optical Network (SONET), Synchronous Digital Hierarchy(SDH), etc., at Layer 2, the packet/optical switches 72 can provideEthernet or Multi-Protocol Label Switching (MPLS) packet switching andat Layer 3 the packet/optical switches can provide IP packet forwarding.The packet switches 74 can be traditional Ethernet switches that are notcontrolled by the SDN controller 60 or Ethernet switches controlled bythe SDN controller 60. The network 10 can include various accesstechnologies 100, such as, without limitation, cable modems, digitalsubscriber loop (DSL), wireless (e.g., 5G), fiber-to-the-X (e.g., home,premises, curb, etc.), and the like. In an embodiment of the proposedsolution, the network 10 is a multi-vendor (i.e., different vendors forthe various components) and multi-layer network (i.e., Layers L0-L3).

FIG. 2 is a block diagram of functional components of an SDN environment50. The SDN environment layers 104, 106 can be implemented on one ormore servers, such as illustrated in FIG. 3 and the layers 104, 106 canbe provided through functional components implemented in softwareexecuted on the server. The SDN environment 50 includes a programmableinfrastructure layer 102, a control layer 104, and an application layer106. The programmable infrastructure layer 102 includes network devicessuch as the switches 70, 72 and the like. The programmableinfrastructure layer 102 is communicatively coupled to the control layer104 via a control plane interface 110 such as OpenFlow, for example. Thecontrol layer 104 facilitates communication between the applicationlayer 106 and the network devices 70, 72 located in the programmableinfrastructure layer 102. The control layer 104 includes SDN controlsoftware 112 with a plurality of network services 114. The control layer104 provides SDN functionality to manage network services 114 throughabstraction of lower level functionality. The application layer 106communicates with the control layer 104 through various ApplicationProgramming Interfaces (APIs) 116. The application layer 106 providesend user connectivity to the SDN such as software modules and/orfunctions responsible for creating a desired path and flow connectionson the physical network through various business applications 118. In anembodiment of the proposed solution, the systems and methods describedherein are implemented as one of the business applications 118 on theSDN controller 60 and/or on a separate server 200.

Server

FIG. 3 is a block diagram illustrating a server 200 which may be used torealize the SDN controller 60, the business applications 118, and/orother systems. The server 200 may be a (special purpose) digitalcomputer that, in terms of hardware architecture, generally includes aprocessor 202, input/output (I/O) interfaces 204, a network interface206, a data store 208, and memory 210. It should be appreciated by thoseof ordinary skill in the art that FIG. 3 depicts the server 200 in anoversimplified manner, and practical embodiments may include additionalcomponents and suitably configured processing logic to support known orconventional operating features that are not described in detail herein.The components (202, 204, 206, 208, and 210) are communicatively coupledvia a local interface 212. The local interface 212 may be, for example,but not limited to, one or more buses or other wired or wirelessconnections, as is known in the art. The local interface 212 may haveadditional elements, which are omitted for simplicity, such ascontrollers, buffers (caches), drivers, repeaters, and receivers, amongmany others, to enable communications. Further, the local interface 212may include address, control, and/or data connections to enableappropriate communications among the aforementioned components.

The processor 202 is a hardware device for executing softwareinstructions. The processor 202 may be any custom made or commerciallyavailable processor, a central processing unit (CPU), an auxiliaryprocessor among several processors associated with the server 200, asemiconductor-based microprocessor (in the form of a microchip or chipset), or generally any device for executing software instructions. Whenthe server 200 is in operation, the processor 202 is configured toexecute software stored within the memory 210, to communicate data toand from the memory 210, and to generally control operations of theserver 200 pursuant to the software instructions. The I/O interfaces 204may be used to receive user input from and/or for providing systemoutput to one or more devices or components. User input may be providedvia, for example, a keyboard, touchpad, and/or a mouse. The systemoutput may be provided via a display device and a printer (not shown).

The network interface 206 may be used to enable the server 200 tocommunicate over a network, such as the Internet, a wide area network(WAN), a local area network (LAN), and the like, etc. The networkinterface 206 may include, for example, an Ethernet card or adapter(e.g., 10BaseT, Fast Ethernet, Gigabit Ethernet, 10 GbE) or a wirelesslocal area network (WLAN) card or adapter (e.g., 802.11a/b/g/n/ac). Thenetwork interface 206 may include address, control, and/or dataconnections to enable appropriate communications on the network. A datastore 208 may be used to store data. The data store 208 may include anyof volatile memory elements (e.g., random access memory (RAM, such asDRAM, SRAM, SDRAM, and the like)), nonvolatile memory elements (e.g.,ROM, hard drive, tape, CDROM, and the like), and combinations thereof.Moreover, the data store 208 may incorporate electronic, magnetic,optical, and/or other types of storage media. In one example, the datastore 208 may be located internal to the server 200 such as, forexample, an internal hard drive connected to the local interface 212 inthe server 200. Additionally, in another embodiment, the data store 208may be located external to the server 200 such as, for example, anexternal hard drive connected to the I/O interfaces 204 (e.g., SCSI orUSB connection). In a further embodiment, the data store 208 may beconnected to the server 200 through a network, such as, for example, anetwork attached file server.

The memory 210 may include any of volatile memory elements (e.g., randomaccess memory (RAM, such as DRAM, SRAM, SDRAM, etc.)), nonvolatilememory elements (e.g., ROM, hard drive, tape, CDROM, etc.), andcombinations thereof. Moreover, the memory 210 may incorporateelectronic, magnetic, optical, and/or other types of storage media. Notethat the memory 210 may have a distributed architecture, where variouscomponents are situated remotely from one another but can be accessed bythe processor 202. The software in memory 210 may include one or moresoftware programs, each of which includes an ordered listing ofexecutable instructions for implementing logical functions. The softwarein the memory 210 includes a suitable operating system (O/S) 214 and oneor more programs 216. The operating system 214 essentially controls theexecution of other computer programs, such as the one or more programs216, and provides scheduling, input-output control, file and datamanagement, memory management, and communication control and relatedservices. The one or more programs 216 may be configured to implementthe various processes, algorithms, methods, techniques, etc. describedherein.

Note, the server 200 describes a physical implementation of a device forrealizing the systems and methods. Additionally, the systems and methodscan be implemented via Virtual Machines (VMs), software containers, etc.

Database of Record

Again, for network automation, a database of record is presented thatinteracts in real time with managed entities in the network 10, i.e.,services, network managed entities, applications, functions, andstorage, compute, physical, and human resources (or some subset) andtheir associated data of relevance in real time (each will be referredto as a managed entity for the remainder of this document). The databaseof record can also be associated with a set of assertions which may bestatic, dynamic, Boolean or relatively conditional, etc. that outlinethe true nature of how managed entities are related to each other and ofthe capabilities and limitations of such a managed entity. Theseassertions may be sourced from physics (e.g., similar to developing aphysics engine with location, vector, power, space, mobilityattributes), definition (e.g., the definition of a particular servicewill identify a set of locations/addresses, requirements, and functionsrequired or physical device with a prescribed software version'scapabilities), interface capabilities (e.g., API definitions), processes(e.g., human workload management, job control, network changemanagement), architectures (e.g., client/slave, peer to peer,hierarchical, etc.), policies (e.g., priorities), ownership, algorithms,business relationships, etc. sufficient to accurately model the networkand its environment accurately. In an embodiment, ArtificialIntelligence (AI) based mechanisms like reinforcement learing,analytics, or programming can be used to extrapolate data, developprocesses, architectures, policy, etc., using the logical database ofrecord.

The logical database of record allows the state of the real network tobe observed or inferred and controlled by automated processes that takeactions to affect its future state through available API's. In itsultimate state, the above logical network and environment replica in thelogical database of record is capable of fully representing the physicalnetwork 10 and its environment with sufficient statistical relevance tooptimize, alter, test, plan, and predict with results sufficientlysimilar to the corresponding action on the real network 10. Further,this logical network and environment replica can have APIs that enableapplications to optimize, control, configure, plan, manage, service orproduct design and test, or change based on all or a sub-component ofthe network replica and to fully or partially statically (i.e., fork) ordynamically (i.e., parallel) replicate the replica for a givenapplication or set of applications prior to changing the actual network10.

This logical network and environment replica, i.e., the logical databaseof record, is able to access the network 10 and its environment throughAPIs that extend into analytics, hypervisors, Operating Systems (OSs),Network Functions Virtualization Orchestrators (NFVOs), Multi-DomainService Orchestrators (MDSOs), SDN controllers, user interfaces,applications, element management, network management, the OperationSupport System (OSS), the Business Support System (BSS), and/or resourceadaptors to pull data from the network 10 and to effect change in thereal network and its environment. In addition, APIs and analytics canderive the assertions from service provider policies, processes, vendorconfigurations or specifications, and any other sources of data relevantto the assertions.

In its preferred state, the database of record is implemented in ahighly efficient manner reducing the distribution of irrelevant data,minimizing the resource consumption for network 10 to provide replicadata, and to minimize change execution from replica to network 10. Notethat measurements taken that are not relevant to the replica may beleveraged or archived by other systems. The replica may choose toutilize these records if in the future an application was added thatcould leverage the historical information.

Given the network 10 can be highly distributed, so can the replica. Theultimate instantiation of this replica can be micro or atomicallyserviced, based in a distributed cloud infrastructure that closely mapsto the network's physical location while supporting business continuityby ensuring replica data replication. Templates could be used todescribe and define services and relationships. Further, the replica canenable analytics and machine learning to monitor replica state,accuracy, errors, assertion inconsistencies, identify data relevance andrefresh frequency, etc.

FIG. 4 is a block diagram of a network replica 300 including a databaseof record 302 interfacing with the network 10, management systems 304,operations 306, applications 308, and human resources 310. The networkreplica 300 is derived based on interactions with the applications 308built to work with the network replica 300, the network 10, operations306, and an understanding of the human resources 310 involved in itsprocesses. The network replica 300 is a computer-implemented/executedsystem and contemplates operation on the server 200, on a group ofservers 200, in the cloud, etc. The network replica 300 can utilize anycomputing architecture including microservices, containers, etc.

The management systems 304 contemplate various types of managementsystems including, without limitation, BSSs, Network Management Systems(NMS), hypervisors, SDN control, OSSs, Element Management Systems (EMS),MDSO, NFVO, etc. The network 10 can include various services implementedin the network 10, network functions, physical network elements, VirtualNetwork Functions (VNFs), Virtual Network Infrastructure (VNI), etc. Theoperations 306 are operators interacting with the network replica 300and can include assertion rules, policy, state machines, andconfiguration, etc. The operations 306 can be configured to interact andperform various functions described herein with the network replica 300via applications 308.

The network replica 300 includes the database of record 302 whichincludes a data retrieval module 320, a topology retrieval module 322,and a human state module 324. The data retrieval module 320 can obtaindata from the network 10, e.g., Performance Monitoring (PM), Operations,Administration, Maintenance, and Provisioning (OAM&P) data,configuration data, etc. The topology retrieval module 322 can obtainnetwork topology, service configuration, etc. of the network 10. Thehuman state module 324 can obtain human workload management, jobcontrol, network change management, etc. The network replica 300 furtherincludes assertions 330 such as replica technology assertions, replicaprocess assertions, replica business assertions, and the like. Thenetwork replica 300 interacts with the network 10, the managementsystems 304, the operations 306, the applications 308, and the humanresources 310 via various APIs.

The network replica 300 itself has components that provide the followingcapabilities including tracking via a data of interest 340 module, thedatabase of record 302, the assertions 330 that provide understanding onthe functional capabilities and limitations of the each component in thereplica 300, normalization 342 capabilities that translate elements inthe database of record 302 to a common normalized definition andtimeframe—recognizing that data collected from the operations 306, thehuman resources 310, and the network 10 may be collected at differentfrequencies and times and may hold off-standard definitions. The networkreplica 300 also includes an analytics engine 344 that leverage thedatabase of record 302 (typically post-normalization) along with theassertions 330 to deliver processed data to the applications 308 and theoperations 306. Note that the analytics engine 344 can gain access toadditional sources of information through other connections (e.g.,Twitter feeds to determine world events, APIs to external data sources,etc.). Both processed and normalized raw data are made available to theapplications 308 and the operations 306 through a data module 346.

The data of interest 340 module provides interaction between theapplications 308, the network replica 300, and the operations 306 aswell as via configuration to determine what data is relevant to thecurrent deployment of the network replica 300. Changes in interest cancause churn in and out of various managed entities in the model with acache model to add managed entities to the model immediately upondiscovering the need, but removal after a period of minimal interestunless highlighted by the operations 306 or an application 308 as animportant but rarely used managed entities.

FIG. 5 is a diagram of information in the database of record 302illustrating an example of the level of detail when running applicationsthat simulate traffic on the network 10. In this example, a vendor XEthernet switch Y is modeled with a backplane, and associatedcard-to-card latency and various card types A, B, etc. The card type Acan have information related to ingress with virtual ports, policing,queues I, II, N, etc. The queues can have information for modelinglatency, Class of Service (COS) behavior, etc. The egress for the cardtype A can have a virtual port with shaping, etc.

The network replica 300 itself is generated from a combination ofexisting network management, SDN, NFV, network discovery, probing,configuration, and vendor specifications on the characteristics of eachcomponent of the network 10.

Instrumentation of the network replica 300 occurs through resourceadaptation that accesses equipment through management ports and couldalso include the use of network probes, endpoint performancemeasurement, network taps, or passive network interfaces. Management,orchestration, and other control systems may also be used forinstrumentation where the latency is acceptable and noting that many ofthese systems may ultimately reside as applications that rely on thenetwork replica 300 for data.

The assertions 330 are data structures, rules, etc. that provide theability to understand how components of the network 10 and itsenvironment act under different configuration and performancecharacteristics. As such, the assertions 330 can include datastructures, algorithms, conditions/thresholds, state machines, andprocedural calls. The assertions 330 can be generated based onreinforcement learning, analytics, programming, etc.

The normalization 342 capture standard definitions of data and a defineddata frequency and adapts information collected by the database ofrecord 302 to the requisite definitions and data frequency throughembedded and/or configurable algorithms and timelines.

The analytics engine 344 can be provided by the applications 308 or be acommon analytic capability used by a number of applications 308. Forexample, the analytics engine 344 could identify whether the network 10was in an anomalous state and degree of distress it was under bycomparing the normalized database of record 302 with typical pastnetwork state including current and historical operator. Quality ofExperience (QoE) information can be pulled from an operational database.

FIG. 6 is a diagram of segmentation of the network replica 300. Anothercomponent of the network replica 300 is its ability to employ the dataof interest 340 module as well as the database of record 302 to capturethe logical and physical locations of the network 10, its environment,application execution, and operations request sources. This locationinformation could be through Internet Protocol (IP) addressing or GlobalPositioning Satellite (GPS) coordinates. This allows the network replica300 to segment itself through replica segmentation 400 intosubcomponents including segmented data 402, atomic/micro-services 404,records 406, and sub-assertions 408 and to be distributed throughreplica distribution 420 within a distributed cloud infrastructure toboth edge and core cloud compute components. Typically, this involvesmoving data storage closer to the equipment and performing analyticsspecific to local equipment locally.

Use Cases

The network replica 300, having a real-time or near real-time view ofthe network 10, can enable various use cases. The network replica 300 isa detailed model of the current state of the twinned “real” network 10allowing the state of the real network to be observed or inferred andcontrolled by automated processes that take actions to affect its futurestate through available API's.

The network replica 300 can be a platform for designing and testing newcontrol mechanisms. The availability of state information andmeasurements from the real network in the network replica 300 allows newcontrol mechanisms to be designed and tested in a safe way, firstapplied to control the network replica 300, and later, after testing,applied to control the real network 10. The control mechanisms could besimple automation of existing human processes, or they could be based onsophisticated control theory or machine learning algorithms.

The network replica 300 can be a testbed for product and servicedesigns. Before a product/service is developed, a “representation” of itcould be and incorporated into the network replica 300. Therepresentation could have a specified external behavior (how itinteracts with the rest of the network replica 300) preferably with avery lightweight implementation. This allows the benefits/limitations ofa product/service design to be evaluated quickly and at low cost. Thenetwork replica 300 can be a testbed for new service design. Similar toa testbed for product designs, except that most of the design includescoordinating and controlling existing network elements to produce newnetwork behavior (such as automation of existing network managementprocesses like ordering services). The network replica 300 can be atestbed for product testing. The APIs in the network replica 300 couldbe associated with a newly developed product allowing that product to be“driven” by the network replica 300 to evaluate its performance in asafe environment.

The network replica 300 can be a testbed for new service testing anddeployment. Once a new service has been designed, it could be deployedwithin the network replica 300 to allow its functionality andreliability to be tested. This allows operators to access the servicethrough the available APIs so that the service could be test-driven andevaluated in a safe way. If high volume/high performance is needed, theservice could be deployed “outside” the network replica 300 in the realnetwork allowing greater scale and performance testing, or it could beput into limited production within the replica while providing a realexternal service.

The network replica 300 can provide a safe way to stress-test the realnetwork 10. Network failures, including those induced by man-made ornatural events could be safely simulated in the network replica 300 toassess their impact. This allows defensive measures to be designed andtested without affecting the real network 10. These defensive measurescould themselves use the automation and control capabilities of thereplica as the foundation for the implementation of stress responsemechanisms.

The network replica 300 can provide a platform for processing-intensivenetwork control and management strategies. An example of this isperiodic network grooming—the connection state of the existing networkcould be evaluated, and critical connections could be moved to otherroutes thereby reclaiming stranded or wasted bandwidth and prolongingthe life of the network. These computations could all be done within thenetwork replica 300 and then automatically implemented within the realnetwork once a suitable set of configurations has been selected.

The network replica 300 can provide a platform for network planning. Thedesign limits of the current real network could be evaluated usingsimulated traffic growth within the replica. Traffic growth scenarioscould be simulated to evaluate the quality of network growth proposalsbefore they are presented to operators.

Network Replica Process

FIG. 7 is a flowchart of a network replication process 500. The networkreplica process 500 includes, via a server, group of servers, or in acloud computing environment, communicating with one or more managementsystems and one or more networks associated with the one or moremanagement systems via one or more Application Programming Interfaces(APIs) (step 501); obtaining data from the one or more managementsystems and/or the one or more networks (step 502); storing the data ina database of record which defines a detailed model of a current stateof the one or more networks (step 503); and applying one or moreassertions to data of interest in the database of record to emulatebehavior in the one or more networks, wherein the assertions map actualdevice, process, business, architecture, and technology behaviors ontothe data of interest from the database of record to emulate the behavior(step 504), wherein the database of record and the applied one or moreassertions include a network replica of the one or more networks.

The one or more assertions model functional capabilities and limitationsof components in the one or more networks. The network replica process500 can further include normalizing the obtained data to a commonnormalized definition and timeframe prior to the storing. The one ormanagement systems can include any of a hypervisor, a Network FunctionsVirtualization Orchestrator (NFVO), a Multi-Domain Service Orchestrator(MDSO), a Software Defined Networking (SDN) controller, an ElementManagement System (EMS), a Network Management System (NMS), an OperationSupport System (OSS), and a Business Support System (BSS).

The network replica process 500 can further include analyzing the storeddata via an analytics engine to detect whether the one or more networksare in an anomalous state and if so, to identify a degree of distressbased on past network states from the database of record. The networkreplica process 500 can further include segmenting the network replicainto subcomponents; and distributing the subcomponents of the networkreplica to the edge and core cloud compute components for analyzinglocal equipment. The one or more assertions can emulate traffic on theone or more networks at any of a photonic layer, a Time DivisionMultiplexing (TDM) layer, a packet layer, and a combination thereof. Thenetwork replica process 500 can further include analyzing the obtaineddata to determine relevance of the obtained data prior to the storing.

In another embodiment, a system includes one or more network interfacescommunicatively coupled to one or more management systems and one ormore networks associated with the one or more management systems via oneor more Application Programming Interfaces (APIs); one or moreprocessors communicatively coupled to the one or more networkinterfaces; and memory storing instructions that, when executed, causethe one or more processors to obtain data from the one or moremanagement systems and/or the one or more networks, store the data in adatabase of record which defines a detailed model of a current state ofthe one or more networks, and apply one or more assertions to data ofinterest in the database of record to emulate behavior in the one ormore networks, wherein the assertions map actual device, process,business, architecture, and technology behaviors onto the data ofinterest from the database of record to emulate the behavior, whereinthe database of record and the applied one or more assertions include anetwork replica of the one or more networks.

In a further embodiment, a non-transitory computer-readable mediumincluding instructions that, when executed, cause a server, group ofservers, or a cloud computing environment to perform the steps of:communicating with one or more management systems and one or morenetworks associated with the one or more management systems via one ormore Application Programming Interfaces (APIs); obtaining data from theone or more management systems and/or the one or more networks; storingthe data in a database of record which defines a detailed model of acurrent state of the one or more networks; and applying one or moreassertions to data of interest in the database of record to emulatebehavior in the one or more networks, wherein the assertions map actualdevice, process, business, architecture, and technology behaviors ontothe data of interest from the database of record to emulate thebehavior, wherein the database of record and the applied one or moreassertions include a network replica of the one or more networks.

It will be appreciated that some embodiments described herein mayinclude one or more generic or specialized processors (“one or moreprocessors”) such as microprocessors; Central Processing Units (CPUs);Digital Signal Processors (DSPs): customized processors such as NetworkProcessors (NPs) or Network Processing Units (NPUs), Graphics ProcessingUnits (GPUs), or the like; Field Programmable Gate Arrays (FPGAs); andthe like along with unique stored program instructions (including bothsoftware and firmware) for control thereof to implement, in conjunctionwith certain non-processor circuits, some, most, or all of the functionsof the methods and/or systems described herein. Alternatively, some orall functions may be implemented by a state machine that has no storedprogram instructions, or in one or more Application Specific IntegratedCircuits (ASICs), in which each function or some combinations of certainof the functions are implemented as custom logic or circuitry. Ofcourse, a combination of the aforementioned approaches may be used. Forsome of the embodiments described herein, a corresponding device inhardware and optionally with software, firmware, and a combinationthereof can be referred to as “circuitry configured or adapted to,”“logic configured or adapted to,” etc. perform a set of operations,steps, methods, processes, algorithms, functions, techniques, etc. ondigital and/or analog signals as described herein for the variousembodiments.

Moreover, some embodiments may include a non-transitorycomputer-readable storage medium having computer readable code storedthereon for programming a computer, server, appliance, device,processor, circuit, etc. each of which may include a processor toperform functions as described and claimed herein. Examples of suchcomputer-readable storage mediums include, but are not limited to, ahard disk, an optical storage device, a magnetic storage device, a ROM(Read Only Memory), a PROM (Programmable Read Only Memory), an EPROM(Erasable Programmable Read Only Memory), an EEPROM (ElectricallyErasable Programmable Read Only Memory), Flash memory, and the like.When stored in the non-transitory computer-readable medium, software caninclude instructions executable by a processor or device (e.g., any typeof programmable circuitry or logic) that, in response to such execution,cause a processor or the device to perform a set of operations, steps,methods, processes, algorithms, functions, techniques, etc. as describedherein for the various embodiments.

Although the present disclosure has been illustrated and describedherein with reference to preferred embodiments and specific examplesthereof, it will be readily apparent to those of ordinary skill in theart that other embodiments and examples may perform similar functionsand/or achieve like results. All such equivalent embodiments andexamples are within the spirit and scope of the present disclosure, arecontemplated thereby, and are intended to be covered by the followingclaims.

What is claimed is:
 1. A network replica method comprising: via aserver, a group of servers, or in a cloud computing environment,communicating with one or more management systems and one or morenetworks associated with the one or more management systems via one ormore Application Programming Interfaces (APIs); obtaining data from anyof the one or more management systems and the one or more networks for adatabase of record, the data obtained for the database of recordincluding one or more of Performance Monitoring (PM), Operations,Administration, Maintenance, and Provisioning (OAM&P) data,configuration data, network topoloy data, service configuration data,human workload management data, job control data, and network changemanagement data; storing the data in the database of record whichdefines a detailed model of a current state of the one or more networks;and applying one or more assertions to data of interest in the databaseof record to emulate behavior in the one or more networks, wherein theassertions map one or more of actual device, process, business,architecture, and technology behaviors onto the data of interest fromthe database of record to emulate the behavior, wherein the database ofrecord and the applied one or more assertions comprise a network replicaof the one or more networks.
 2. The network replica method of claim 1,wherein the one or more assertions model functional capabilities andlimitations of components in the one or more networks.
 3. The networkreplica method of claim 1, further comprising: normalizing the obtaineddata to a common normalized definition and timeframe prior to thestoring.
 4. The network replica method of claim 1, wherein the one ormanagement systems comprise any of a hypervisor, a Network FunctionsVirtualization Orchestrator (NFVO), a Multi-Domain Service Orchestrator(MDSO), a Software Defined Networking (SDN) controller, an ElementManagement System (EMS), a Network Management System (NMS), an OperationSupport System (OSS), and a Business Support System (BSS).
 5. Thenetwork replica method of claim 1, further comprising: analyzing thestored data via an analytics engine to detect whether the one or morenetworks are in an anomalous state and, if so, to identify a degree ofdistress based on past network states from the database of record. 6.The network replica method of claim 1, further comprising: segmentingthe network replica into subcomponents; and distributing thesubcomponents of the network replica to edge and core cloud computecomponents for analyzing local equipment.
 7. The network replica methodof claim 1, wherein the one or more assertions emulate traffic on theone or more networks at any of a photonic layer, a Time DivisionMultiplexing (TDM) layer, a packet layer, and a combination thereof. 8.The network replica method of claim 1, further comprising: analyzing theobtained data to determine relevance of the obtained data prior to thestoring.
 9. A system comprising: one or more network interfacescommunicatively coupled to one or more management systems and one ormore networks associated with the one or more management systems via oneor more Application Programming Interfaces (APIs); one or moreprocessors communicatively coupled to the one or more networkinterfaces; and memory storing instructions that, when executed, causethe one or more processors to obtain data from any of the one or moremanagement systems and the one or more networks for a database ofrecord, the data obtained for the database of record including one ormore of Performance Monitoring (PM), Operations, Administration,Maintenance, and Provisioning (OAM&P) data, configuration data, networktopology data, service configuration data, human workload managementdata, job control data, and network change management data, store thedata in the database of record which defines a detailed model of acurrent state of the one or more networks, and apply one or moreassertions to data of interest in the database of record to emulatebehavior in the one or more networks, wherein the assertions map one ormore of actual device, process, business, architecture, and technologybehaviors onto the data of interest from the database of record toemulate the behavior, wherein the database of record and the applied oneor more assertions comprise a network replica of the one or morenetworks.
 10. The system of claim 9, wherein the one or more assertionsmodel functional capabilities and limitations of components in the oneor more networks.
 11. The system of claim 9, wherein the instructionsthat, when executed, further cause the one or more processors tonormalize the obtained data to a common normalized definition andtimeframe prior to storage.
 12. The system of claim 9, wherein the oneor management systems comprise any of a hypervisor, a Network FunctionsVirtualization Orchestrator (NFVO), a Multi-Domain Service Orchestrator(MDSO), a Software Defined Networking (SDN) controller, an ElementManagement System (EMS), a Network Management System (NMS), an OperationSupport System (OSS), and a Business Support System (BSS).
 13. Thesystem of claim 9, wherein the instructions that, when executed, furthercause the one or more processors to analyze the stored data via ananalytics engine to detect whether the one or more networks are in ananomalous state and if so, to identify a degree of distress based onpast network states from the database of record.
 14. The system of claim9, wherein the instructions that, when executed, further cause the oneor more processors to segment the network replica into subcomponents,and distribute the subcomponents of the network replica to edge and corecloud compute components for analyzing local equipment.
 15. The systemof claim 9, wherein the one or more assertions emulate traffic on theone or more networks at any of a photonic layer, a Time DivisionMultiplexing (TDM) layer, a packet layer, and a combination thereof. 16.The system of claim 9, wherein the instructions that, when executed,further cause the one or more processors to analyze the obtained data todetermine relevance of the obtained data prior to storage.
 17. Anon-transitory computer-readable medium comprising instructions that,when executed, cause a server, group of servers, or a cloud computingenvironment to perform the steps of: communicating with one or moremanagement systems and one or more networks associated with the one ormore management systems via one or more Application ProgrammingInterfaces (APIs); obtaining data from any of the one or more managementsystems and the one or more networks for a database of record, the dataobtained for the database of record including one or more of PerformanceMonitoring (PM), Operations, Administration, Maintenance, andProvisioning (OAM&P) data, configuration data, network topology data,service configuration data, human workload management data, job controldata, and network change management data; storing the data in thedatabase of record which defines a detailed model of a current state ofthe one or more networks; and applying one or more assertions to data ofinterest in the database of record to emulate behavior in the one ormore networks, wherein the assertions map one or more of actual device,process, business, architecture, and technology behaviors onto the dataof interest from the database of record to emulate the behavior, whereinthe database of record and the applied one or more assertions comprise anetwork replica of the one or more networks.
 18. The non-transitorycomputer-readable medium of claim 17, wherein the one or more assertionsmodel functional capabilities and limitations of components in the oneor more networks.
 19. The non-transitory computer-readable medium ofclaim 17, wherein steps further comprise: normalizing the obtained datato a common normalized definition and timeframe prior to the storing.20. The non-transitory computer-readable medium of claim 17, wherein theone or management systems comprise any of a hypervisor, a NetworkFunctions Virtualization Orchestrator (NFVO), a Multi-Domain ServiceOrchestrator (MDSO), a Software Defined Networking (SDN) controller, anElement Management System (EMS), a Network Management System (NMS), anOperation Support System (OSS), and a Business Support System (BSS).